Skip to content

[9.0] Move more utilities to DIRACCommon#8290

Merged
fstagni merged 3 commits intoDIRACGrid:integrationfrom
chrisburr:feature/move-more-to-dirac-common-2
Sep 3, 2025
Merged

[9.0] Move more utilities to DIRACCommon#8290
fstagni merged 3 commits intoDIRACGrid:integrationfrom
chrisburr:feature/move-more-to-dirac-common-2

Conversation

@chrisburr
Copy link
Copy Markdown
Member

@chrisburr chrisburr commented Sep 2, 2025

BEGINRELEASENOTES

*Core
CHANGE: Move TimeUtilities to DIRACCommon
CHANGE: Move StateMachine to DIRACCommon
CHANGE: Move JDL utilities to DIRACCommon
CHANGE: Move List utilities to DIRACCommon

*WorkloadManagement
CHANGE: Move JobStatus to DIRACCommon
CHANGE: Move JobsStateMachine to DIRACCommon
CHANGE: Move JobStatusUtility to DIRACCommon
CHANGE: Move JobManifest to DIRACCommon
CHANGE: Move JobDBUtils to DIRACCommon
FIX: Correctly update JDL defaults when CS changes

ENDRELEASENOTES

Closes #7426

chrisburr and others added 2 commits September 2, 2025 10:32
Move getNewStatus and getStartAndEndTime functions from DIRAC JobStatusUtility
to DIRACCommon as stateless utility functions. The original DIRAC module now
imports these functions from DIRACCommon.

The migrated functions intentionally retain references to undefined dependencies
(TimeUtilities, JobStatus) as part of the stateless utility migration strategy.
…Common

Migrate three core modules from DIRAC to DIRACCommon to enable shared usage:

- Move TimeUtilities.py with gLogger references to DIRACCommon/Core/Utilities/
- Move StateMachine.py with State and StateMachine classes to DIRACCommon/Core/Utilities/
- Move JobStatus.py with constants and JobsStateMachine to DIRACCommon/WorkloadManagementSystem/Client/

DIRAC modules now re-export from DIRACCommon for backward compatibility.
Update JobStatusUtility.py imports to use migrated DIRACCommon modules.

Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@chrisburr chrisburr force-pushed the feature/move-more-to-dirac-common-2 branch from 46aaeda to 365c718 Compare September 2, 2025 08:33
@chrisburr chrisburr changed the title [9.0] Move JobStatus utilities to DIRACCommon [9.0] Move more utilities to DIRACCommon Sep 2, 2025
@chrisburr chrisburr force-pushed the feature/move-more-to-dirac-common-2 branch 8 times, most recently from 990efee to adf73ca Compare September 3, 2025 02:35
- Move JDL, List utilities from DIRAC.Core.Utilities to DIRACCommon
- Migrate JobManifest and JobDBUtils from WorkloadManagementSystem to DIRACCommon
- Add Pydantic-based JobModel with validation for job descriptions
- Update DIRAC modules to import from DIRACCommon maintaining backward compatibility
- Add diraccfg and pydantic dependencies to support enhanced functionality

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@chrisburr chrisburr force-pushed the feature/move-more-to-dirac-common-2 branch from adf73ca to c815663 Compare September 3, 2025 03:22
@fstagni fstagni merged commit 7c84335 into DIRACGrid:integration Sep 3, 2025
26 checks passed
@DIRACGridBot DIRACGridBot added the sweep:ignore Prevent sweeping from being ran for this PR label Sep 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

sweep:ignore Prevent sweeping from being ran for this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BaseJobDescriptionModel uses Operations inappropriately

3 participants